MPSA Algorithm